#ifndef MATERIAL_H
#define MATERIAL_H

#include "MyGL.h"
#include "Colour.h"

namespace Engine
{
	class Material
	{
		private:
			Colour m_ambience;
			Colour m_diffuse;
			Colour m_specular;
			float m_shininess;	

		public:
			Material():m_shininess(0.0f){}
			Material(const Colour& amb, const Colour& dif, const Colour& spc, float shine);

			void Bind();

			//setters
			void SetAmbience(const Colour& amb){m_ambience = amb;}
			void SetDiffuse(const Colour& dif){m_diffuse = dif;}
			void SetSpecular(const Colour& spc){m_specular = spc;}
			void SetShininess(float shine){m_shininess = shine;}

			//getters
			const Colour& GetAmbience()const{return m_ambience;}
			const Colour& GetDiffuse()const{return m_diffuse;}
			const Colour& GetSpecular()const{return m_specular;}
			float GetShininess()const{return m_shininess;}
	};
}

#endif